******************************************************************************
******************************************************************************

BIRD ID#:        104
ISSUE TITLE:     [Model Spec] DDR2 Overshoot/Undershoot Parameters
REQUESTER:       Randy Wolff, Micron Technology, Inc.
DATE SUBMITTED:  April 21, 2006
DATE ACCEPTED BY IBIS OPEN FORUM: PENDING

******************************************************************************
******************************************************************************

STATEMENT OF THE ISSUE:

The JEDEC DDR2 SDRAM Specification (JESD79-2A) specifies AC overshoot and 
undershoot in terms of a maximum area above or below specific voltage
thresholds.  A maximum overshoot/undershoot amplitude is also defined.  The
parameters available for [Model Spec] do not provide a way to check for
violations of this overshoot/undershoot condition as calculated by area.  
The dynamic overshoot/undershoot parameters can specify time and maximum
voltage, but these are not adequate to define an area in terms of  V-s. 

This BIRD proposes adding four new parameters to the IBIS specification
under [Model Spec] that will give EDA software the conditions necessary to
check for overshoot/undershoot violations on DDR2 SDRAM devices and issue
warnings.

******************************************************************************

STATEMENT OF THE RESOLVED SPECIFICATIONS:

All changes, with the exception of spacing and line break adjustments, are 
shown with |*.

|*****************************************************************************
|* ORIGINAL [Model Spec] TEXT
|*****************************************************************************
|=============================================================================
|     Keyword:  [Model Spec]
|    Required:  No
|  Sub-Params:  Vinh, Vinl, Vinh+, Vinh-, Vinl+, Vinl-, S_overshoot_high,
|               S_overshoot_low, D_overshoot_high, D_overshoot_low,
|               D_overshoot_time, Pulse_high, Pulse_low, Pulse_time, Vmeas,
|               Vref, Cref, Rref, Cref_rising, Cref_falling, Rref_rising,
|               Rref_falling, Vref_rising, Vref_falling, Vmeas_rising, 
|               Vmeas_falling, Rref_diff, Cref_diff
| Description:  The [Model Spec] keyword defines four columns under which
|               specification subparameters are defined.  
|               
|               The following subparameters are defined:
|               Vinh               Input voltage threshold high
|               Vinl               Input voltage threshold low
|               Vinh+              Hysteresis threshold high max Vt+
|               Vinh-              Hysteresis threshold high min Vt+
|               Vinl+              Hysteresis threshold low max Vt-
|               Vinl-              Hysteresis threshold low min Vt-
|               S_overshoot_high   Static overshoot high voltage
|               S_overshoot_low    Static overshoot low voltage
|               D_overshoot_high   Dynamic overshoot high voltage
|               D_overshoot_low    Dynamic overshoot low voltage
|               D_overshoot_time   Dynamic overshoot time
|               Pulse_high         Pulse immunity high voltage
|               Pulse_low          Pulse immunity low voltage
|               Pulse_time         Pulse immunity time
|               Vmeas              Measurement voltage for timing measurements
|               Vref               Timing specification test load voltage
|               Cref               Timing specification capacitive load
|               Rref               Timing specification resistance load
|               Cref_rising        Timing specification capacitive load for
|                                  rising edges
|               Cref_falling       Timing specification capacitive load for
|                                  falling edges
|               Rref_rising        Timing specification resistance load for
|                                  rising edges
|               Rref_falling       Timing specification resistance load for
|                                  falling edges
|               Vref_rising        Timing specification test load voltage for
|                                  rising edges
|               Vref_falling       Timing specification test load voltage for
|                                  falling edges
|               Vmeas_rising       Measurement voltage for rising edge timing
|                                  measurements
|               Vmeas_falling      Measurement voltage for falling edge timing
|                                  measurements
|               Rref_diff          Timing specification differential
|                                  resistance load
|               Cref_diff          Timing specification differential
|                                  capacitive load
|
| Usage Rules:  [Model Spec] must follow all other subparameters under the 
|               [Model] keyword.
|
|               For each subparameter contained in the first column, the 
|               remaining three hold its typical, minimum and maximum values.
|               The entries of typical, minimum and maximum must be placed on
|               a single line and must be separated by at least one white
|               space.  All four columns are required under the [Model Spec]
|               keyword.  However, data is required only in the typical
|               column.  If minimum and/or maximum values are not available,
|               the reserved word "NA" must be used indicating the typical
|               value by default.
|
|               The minimum and maximum values are used for specifications
|               subparameter values that may track the min and max operation
|               conditions of the [Model].  Usually it is related to the
|               Voltage Range settings.
|
|               Unless noted below, no subparameter requires having present
|               any other subparameter.
|      
|               Vinh, Vinl rules:
| 
|               The threshold subparameter lines provide additional min and
|               max column values, if needed.  The typ column values are still
|               required and would be expected to override the Vinh and Vinl
|               subparameter values specified elsewhere.  Note: the syntax
|               rule that require inserting Vinh and Vinl under models remains
|               unchanged even if the values are defined under the [Model
|               Spec] keyword.
|
|               Vinh+, Vinh-, Vinl+, Vinl- rules:
|
|               The four hysteresis subparameters (used for Schmitt trigger
|               inputs for defining two thresholds for the rising edges and
|               two thresholds for falling edges) must all be defined before
|               independent input thresholds for rising and falling edges of
|               the hysteresis threshold rules become effective.  Otherwise
|               the standard threshold subparameters remain in effect.  The
|               hysteresis thresholds shall be at the Vinh+ and Vinh- values
|               for a low-to-high transition, and at the Vinl+ and Vinl-
|               values for a high-to-low transition.
|
|         |
|         |           Receiver Voltage with Hysteresis Thresholds
|         |
|         |
|         |       Rising Edge                            Falling Edge
|         |    Switching Region   oo    o              Switching Region
|         |                  |  o    oo  ooooooooo           |
|         |                  V o                    o        |
|  Vinh+  - - - - - - - - - - x                        o     |
|  Vinh-  - - - - - - - - -  x                           o   |
|         |                 o                             o  |
|         |                o                               o |
|         |               o                                 oV
|  Vinl+  - - - - - - -  o - - - - - - - - - - - - - - - - - x
|  Vinl-  - - - - - - - o  - - - - - - - - - - - - - - - - -  x
|         |           o                                         o
|         |        o                                               o
|         |oooooo-----------------------------------------------------oooooooo
|
|                                       Time -->
|
|               S_overshoot_high, S_overshoot_low rules:
|
|               The static overshoot subparameters provide the DC voltage
|               values for which the model is no longer guaranteed to function
|               correctly.  Typically these are voltages that would cause the
|               physical component to be destroyed.
|
|               D_overshoot_high, D_overshoot_low, D_overshoot_time rules:
|
|               The dynamic overshoot values provide a time window during
|               which the overshoot may exceed the static overshoot limits
|               but be below the dynamic overshoot limits.  D_overshoot_time
|               is required for dynamic overshoot testing.  In addition, if
|               D_overshoot_high is specified, then S_overshoot_high is
|               necessary for testing beyond the static limit.  Similarly, if
|               D_overshoot_low is specified, then S_overshoot_low is
|               necessary for testing beyond the static limit.
|                
|         |
|         |     Receiver Voltage with Static and Dynamic Overshoot Limits
|         |
|         |
|         |   D_overshoot_time ->|      |<-
|         |                      |      |
|  D_overshoot_high - - - - - - -+ - - -+                       
|         |                      | oo   |  Passes - Does Not Exceed Bounds
|         |                      |o  o  |
|  S_overshoot_high - - - - - - -x    o +- - - - - - - - - - - - - - - - - - -
|         |                     o      o ooooooooo 
|         |                    o        o         o
|         |                   o                    o
|         |                  o                      o
|         |                 o                        o
|         |                o                          o
|         |               o                            o
|         |              o                              o        Fails -
|         |             o                                o    Exceeds Bounds
|         |           o                                   o      |   |  |
|         |        o                                       o     V   V  V
|         |oooooo-------------------------------------------o---------o---oooo
|  S_overshoot_low - - - - - - - - - - - - - - - - - - - - - x      +x x x - -
|         |                                                  |o     x   x
|         |                                                  | o   o|
|  D_overshoot_low - - - - - - - - - - - - - - - - - - - - - + -x x-+
|         |                                                  |   x  |
|                                         D_overshoot_time ->|      |<-
|
|                                       Time -->
|
|               Pulse_high, Pulse_low, Pulse_time rules:
|
|               The pulse immunity values provide a time window during which
|               a rising pulse may exceed the nearest threshold value but
|               be below the pulse voltage value and still not cause the
|               input to switch.  Pulse_time is required for pulse immunity
|               testing.  A rising response is tested only if Pulse_high is
|               specified.  Similarly, a falling response is tested only if
|               Pulse_low is specified.  The rising response may exceed the
|               Vinl value, but remain below the Pulse_high value.
|
|               Similarly, the falling response may drop below the Vinh value,
|               but remain above the Pulse_low value.  In either case the
|               input is regarded as immune to switching if the responses
|               are within these extended windows.  If the hysteresis
|               thresholds are defined, then the rising response shall use
|               Vinh- as the reference voltage, and the falling response shall
|               use Vinl+ as the reference voltage.
|
|         |
|         |         Receiver Voltage with Pulse Immunity Thresholds
|         |
|         |
|         |            Switching                           No Switching
|         |                |                               |
|         |                |      oo    o                  |  Switching
|         |                |    o    oo  ooooooooo         |      |
|         |                |   o                    o      |      | 
|         |                V  o                       o    V   oooV
|  Vinh - - - - - - - - - -  x - - - - - - - - - - - - - x   o + -x
|         | Pulse_time ->|  o  |<-                       |ooo  |   o
|  Pulse_high - - - - -  + o - +            Pulse_low  - + - - +    o   
|         |              |o    |            Pulse_time ->|     |<-   o       
|  Vinl - - - - - - - -  x     + - - - - - - - - - - - - - - - - - -  x
|         |             o                                              o
|         |           o                                                 o
|         |        o                                                      o
|         |oooooo------------------------------------------------------------o
|
|                                       Time -->
|
|               Vmeas, Vref, Cref, Rref rules:
|  
|               The Vmeas, Vref, Cref and Rref values under the [Model Spec]
|               keyword override their respective values entered elsewhere.
|               Note that a Vmeas, Vref, Cref or Rref subparameters may not be
|               used if its edge specific version (*_rising or *_falling) is
|               used.
|  
|               Cref_rising, Cref_falling, Rref_rising, Rref_falling,
|               Vref_rising, Vref_falling, Vmeas_rising, Vmeas_falling rules:
|  
|               Use these subparameters when specifying separate timing test
|               loads and voltages for rising and falling edges.  If one
|               'rising' or 'falling' subparameter is used, then the
|               corresponding 'rising' or 'falling' subparameter must be
|               present.  The values listed in these subparameters override 
|               any corresponding Cref, Vref, Rref or Vmeas values entered
|               elsewhere.
|
|               Rref_diff, Cref_diff rules:
| 
|               The Rref_diff and Creff_diff values under the [Model Spec]
|               keyword override their respective values entered elsewhere.
|               These subparameters are used only when the model is referenced
|               by the [Diff Pin] keyword.  These follow the same rules as
|               the corresponding subparameters documented under the [Model]
|               keyword.  See Section 6b for more discussion on true and
|               single-ended differential operation.
|-----------------------------------------------------------------------------
[Model Spec]
|   Subparameter          typ        min        max
|
| Thresholds
|
Vinh                      3.5        3.15       3.85    | 70% of Vcc
Vinl                      1.5        1.35       1.65    | 30% of Vcc
|
| Vinh                    3.835       3.335     4.335   | Offset from Vcc
| Vinl                    3.525       3.025     4.025   | for PECL
|
| Hysteresis
|
Vinh+                     2.0        NA         NA      | Overrides the
Vinh-                     1.6        NA         NA      | thresholds
Vinl+                     1.1        NA         NA 
Vinl-                     0.6        NA         NA      | All 4 are required
|
| Overshoot
|
S_overshoot_high          5.5        5.0        6.0     | Static overshoot
S_overshoot_low          -0.5        NA         NA
D_overshoot_high          6.0        5.5        6.5     | Dynamic overshoot
D_overshoot_low          -1.0       -1.0       -1.0     | requires
|                                                       | D_overshoot_time 
D_overshoot_time          20n        20n        20n     | & static overshoot
|
| Pulse Immunity
|
Pulse_high                3V         NA         NA      | Pulse immunity
Pulse_low                 0          NA         NA      | requires
Pulse_time                3n         NA         NA      | Pulse_time
|
| Timing Thresholds
|
Vmeas                     3.68       3.18       4.68    | A 5 volt PECL
|                                                       | example
|
| Timing test load voltage reference example
|
Vref                      1.25       1.15       1.35    | An SSTL-2 example
|
|
| Rising and falling timing test load example (values from PCI-X
| specification)
|
Cref_falling              10p        10p         10p
Cref_rising               10p        10p         10p
Rref_rising               25         500         25  | typ value not specified
Rref_falling              25         500         25  | typ value not specified
Vref_rising               0          1.5         0     
Vref_falling              3.3        1.5         3.6   
Vmeas_rising              0.941      0.885       1.026 | vmeas = 0.285(vcc)
Vmeas_falling             2.0295     1.845       2.214 | vmeas = 0.615(vcc)
|   
| Differential timing test load for true or single-ended differential model
| 
Rref_diff                 100        90         110
Cref_diff                 5pF        NA         NA
|
|*****************************************************************************
|* END ORIGINAL TEXT
|*****************************************************************************

|*****************************************************************************
|* NEW TEXT
|*****************************************************************************
|=============================================================================
|     Keyword:  [Model Spec]
|    Required:  No
|  Sub-Params:  Vinh, Vinl, Vinh+, Vinh-, Vinl+, Vinl-, S_overshoot_high,
|               S_overshoot_low, D_overshoot_high, D_overshoot_low,
|*               D_overshoot_time, D_overshoot_area_h, D_overshoot_area_l, 
|*               D_overshoot_ampl_h, D_overshoot_ampl_l, Pulse_high, Pulse_low,
|*               Pulse_time, Vmeas, Vref, Cref, Rref, Cref_rising, Cref_falling,
|*               Rref_rising, Rref_falling, Vref_rising, Vref_falling, 
|*               Vmeas_rising, Vmeas_falling, Rref_diff, Cref_diff
|               
| Description:  The [Model Spec] keyword defines four columns under which
|               specification subparameters are defined.  
|               
|               The following subparameters are defined:
|               Vinh               Input voltage threshold high
|               Vinl               Input voltage threshold low
|               Vinh+              Hysteresis threshold high max Vt+
|               Vinh-              Hysteresis threshold high min Vt+
|               Vinl+              Hysteresis threshold low max Vt-
|               Vinl-              Hysteresis threshold low min Vt-
|               S_overshoot_high   Static overshoot high voltage
|               S_overshoot_low    Static overshoot low voltage
|               D_overshoot_high   Dynamic overshoot high voltage
|               D_overshoot_low    Dynamic overshoot low voltage
|               D_overshoot_time   Dynamic overshoot time
|*               D_overshoot_area_h  Dynamic overshoot high area (in V-s)
|*               D_overshoot_area_l  Dynamic overshoot low area (in V-s)
|*               D_overshoot_ampl_h  Dynamic overshoot high max amplitude
|*               D_overshoot_ampl_l  Dynamic overshoot low max amplitude
|               Pulse_high         Pulse immunity high voltage
|               Pulse_low          Pulse immunity low voltage
|               Pulse_time         Pulse immunity time
|               Vmeas              Measurement voltage for timing measurements
|               Vref               Timing specification test load voltage
|               Cref               Timing specification capacitive load
|               Rref               Timing specification resistance load
|               Cref_rising        Timing specification capacitive load for
|                                  rising edges
|               Cref_falling       Timing specification capacitive load for
|                                  falling edges
|               Rref_rising        Timing specification resistance load for
|                                  rising edges
|               Rref_falling       Timing specification resistance load for
|                                  falling edges
|               Vref_rising        Timing specification test load voltage for
|                                  rising edges
|               Vref_falling       Timing specification test load voltage for
|                                  falling edges
|               Vmeas_rising       Measurement voltage for rising edge timing
|                                  measurements
|               Vmeas_falling      Measurement voltage for falling edge timing
|                                  measurements
|               Rref_diff          Timing specification differential
|                                  resistance load
|               Cref_diff          Timing specification differential
|                                  capacitive load
|
| Usage Rules:  [Model Spec] must follow all other subparameters under the 
|               [Model] keyword.
|
|               For each subparameter contained in the first column, the 
|               remaining three hold its typical, minimum and maximum values.
|               The entries of typical, minimum and maximum must be placed on
|               a single line and must be separated by at least one white
|               space.  All four columns are required under the [Model Spec]
|               keyword.  However, data is required only in the typical
|               column.  If minimum and/or maximum values are not available,
|               the reserved word "NA" must be used indicating the typical
|               value by default.
|
|               The minimum and maximum values are used for specifications
|               subparameter values that may track the min and max operation
|               conditions of the [Model].  Usually it is related to the
|               Voltage Range settings.
|
|               Unless noted below, no subparameter requires having present
|               any other subparameter.
|      
|               Vinh, Vinl rules:
| 
|               The threshold subparameter lines provide additional min and
|               max column values, if needed.  The typ column values are still
|               required and would be expected to override the Vinh and Vinl
|               subparameter values specified elsewhere.  Note: the syntax
|               rule that require inserting Vinh and Vinl under models remains
|               unchanged even if the values are defined under the [Model
|               Spec] keyword.
|
|               Vinh+, Vinh-, Vinl+, Vinl- rules:
|
|               The four hysteresis subparameters (used for Schmitt trigger
|               inputs for defining two thresholds for the rising edges and
|               two thresholds for falling edges) must all be defined before
|               independent input thresholds for rising and falling edges of
|               the hysteresis threshold rules become effective.  Otherwise
|               the standard threshold subparameters remain in effect.  The
|               hysteresis thresholds shall be at the Vinh+ and Vinh- values
|               for a low-to-high transition, and at the Vinl+ and Vinl-
|               values for a high-to-low transition.
|
|         |
|         |           Receiver Voltage with Hysteresis Thresholds
|         |
|         |
|         |       Rising Edge                            Falling Edge
|         |    Switching Region   oo    o              Switching Region
|         |                  |  o    oo  ooooooooo           |
|         |                  V o                    o        |
|  Vinh+  - - - - - - - - - - x                        o     |
|  Vinh-  - - - - - - - - -  x                           o   |
|         |                 o                             o  |
|         |                o                               o |
|         |               o                                 oV
|  Vinl+  - - - - - - -  o - - - - - - - - - - - - - - - - - x
|  Vinl-  - - - - - - - o  - - - - - - - - - - - - - - - - -  x
|         |           o                                         o
|         |        o                                               o
|         |oooooo-----------------------------------------------------oooooooo
|
|                                       Time -->
|
|               S_overshoot_high, S_overshoot_low rules:
|
|               The static overshoot subparameters provide the DC voltage
|               values for which the model is no longer guaranteed to function
|               correctly.  Typically these are voltages that would cause the
|               physical component to be destroyed.
|
|               D_overshoot_high, D_overshoot_low, D_overshoot_time rules:
|
|               The dynamic overshoot values provide a time window during
|               which the overshoot may exceed the static overshoot limits
|               but be below the dynamic overshoot limits.  D_overshoot_time
|               is required for dynamic overshoot testing.  In addition, if
|               D_overshoot_high is specified, then S_overshoot_high is
|               necessary for testing beyond the static limit.  Similarly, if
|               D_overshoot_low is specified, then S_overshoot_low is
|               necessary for testing beyond the static limit.
|                
|         |
|         |     Receiver Voltage with Static and Dynamic Overshoot Limits
|         |
|         |
|         |   D_overshoot_time ->|      |<-
|         |                      |      |
|  D_overshoot_high - - - - - - -+ - - -+                       
|         |                      | oo   |  Passes - Does Not Exceed Bounds
|         |                      |o  o  |
|  S_overshoot_high - - - - - - -x    o +- - - - - - - - - - - - - - - - - - -
|         |                     o      o ooooooooo 
|         |                    o        o         o
|         |                   o                    o
|         |                  o                      o
|         |                 o                        o
|         |                o                          o
|         |               o                            o
|         |              o                              o        Fails -
|         |             o                                o    Exceeds Bounds
|         |           o                                   o      |   |  |
|         |        o                                       o     V   V  V
|         |oooooo-------------------------------------------o---------o---oooo
|  S_overshoot_low - - - - - - - - - - - - - - - - - - - - - x      +x x x - -
|         |                                                  |o     x   x
|         |                                                  | o   o|
|  D_overshoot_low - - - - - - - - - - - - - - - - - - - - - + -x x-+
|         |                                                  |   x  |
|                                         D_overshoot_time ->|      |<-
|
|                                       Time -->
|
|*               D_overshoot_area_h, D_overshoot_area_l, D_overshoot_ampl_h,
|*               D_overshoot_ampl_l rules:
|*
|*               The dynamic overshoot area values define a maximum V-s
|*               area that an overshooting signal must not exceed.  The high
|*               area is calculated from the point that a signal overshoots
|*               above the voltage defined by the [Power Clamp Reference] 
|*               keyword until the point that the signal crosses back through
|*               this same voltage.  If [Power Clamp Reference] is not 
|*               defined, then this crossing voltage is assumed to be defined
|*               by the [Voltage Range] keyword.  The low area is calculated
|*               from the point that a signal overshoots below the voltage 
|*               defined by the [GND Clamp Reference] keyword until the point
|*               that the signal crosses back through this same voltage.  If
|*               [GND Clamp Reference] is not defined, then this crossing
|*               voltage is assumed to be 0.0V.  If D_overshoot_area_h is
|*               specified, then D_overshoot_ampl_h must also be specified. 
|*               D_overshoot_ampl_h provides a maximum amplitude allowed for
|*               the overshoot area and is measured as voltage above the
|*               [Power Clamp Reference] voltage.  Similarly, if 
|*               D_overshoot_area_l is specified, then D_overshoot_ampl_l must
|*               also be specified.  D_overshoot_ampl_l is measured as voltage
|*               below the [GND Clamp Reference] voltage.  Both amplitude 
|*               parameters should be listed as absolute (non-negative) values.
|*               Also, if D_overshoot_area_h, D_overshoot_area_l,
|*               D_overshoot_ampl_h, and D_overshoot_ampl_l are specified, then 
|*               other static and dynamic overshoot parameters are optional.               
|
|*         |
|*         |     Receiver Voltage with Dynamic Area Overshoot Limits
|*         |
|*         |
|*         |     
|*         |
|*  D_overshoot_ampl_h  - - - - - - ++- - - - - - - - - - - - - - - - - - - -                        
|*  D_overshoot_area_h - - - - - ->/o \    Passes - Does Not Exceed Overshoot
|*         |                      /o o \            Area nor Amplitude
|*  [Power Clamp Reference] - - --o   o - - - - - - - - - - - - - - - - - - -
|*         |                     o     o oooooooooo 
|*         |                    o       o          o
|*         |                   o                    o
|*         |                  o                      o
|*         |                 o                        o
|*         |                o                          o
|*         |               o                            o  Fails - Exceeds
|*         |              o                              o  Overshoot Area
|*         |             o                                o  and Amplitude
|*         |           o                                   o      |
|*         |        o                                       o     V
|*         |oooooo-------------------------------------------o---------o---oooo
|* [GND Clamp Reference] - - - - - - - - - - - - - - - - - - -o     - o-o o   -
|*         |                                                  \o   / x  \o   /
|*  D_overshoot_area_l - - - - - - - - - - - - - - - - - - - ->\o / x    \  / 
|*  D_overshoot_ampl_l - - - - - - - - - - - - - - - - - - - - -+x x - - -++ 
|*         |                                                      x   
|*
|*                                       Time -->
|
|               Pulse_high, Pulse_low, Pulse_time rules:
|
|               The pulse immunity values provide a time window during which
|               a rising pulse may exceed the nearest threshold value but
|               be below the pulse voltage value and still not cause the
|               input to switch.  Pulse_time is required for pulse immunity
|               testing.  A rising response is tested only if Pulse_high is
|               specified.  Similarly, a falling response is tested only if
|               Pulse_low is specified.  The rising response may exceed the
|               Vinl value, but remain below the Pulse_high value.
|
|               Similarly, the falling response may drop below the Vinh value,
|               but remain above the Pulse_low value.  In either case the
|               input is regarded as immune to switching if the responses
|               are within these extended windows.  If the hysteresis
|               thresholds are defined, then the rising response shall use
|               Vinh- as the reference voltage, and the falling response shall
|               use Vinl+ as the reference voltage.
|
|         |
|         |         Receiver Voltage with Pulse Immunity Thresholds
|         |
|         |
|         |            Switching                           No Switching
|         |                |                               |
|         |                |      oo    o                  |  Switching
|         |                |    o    oo  ooooooooo         |      |
|         |                |   o                    o      |      | 
|         |                V  o                       o    V   oooV
|  Vinh - - - - - - - - - -  x - - - - - - - - - - - - - x   o + -x
|         | Pulse_time ->|  o  |<-                       |ooo  |   o
|  Pulse_high - - - - -  + o - +            Pulse_low  - + - - +    o   
|         |              |o    |            Pulse_time ->|     |<-   o       
|  Vinl - - - - - - - -  x     + - - - - - - - - - - - - - - - - - -  x
|         |             o                                              o
|         |           o                                                 o
|         |        o                                                      o
|         |oooooo------------------------------------------------------------o
|
|                                       Time -->
|
|               Vmeas, Vref, Cref, Rref rules:
|  
|               The Vmeas, Vref, Cref and Rref values under the [Model Spec]
|               keyword override their respective values entered elsewhere.
|               Note that a Vmeas, Vref, Cref or Rref subparameters may not be
|               used if its edge specific version (*_rising or *_falling) is
|               used.
|  
|               Cref_rising, Cref_falling, Rref_rising, Rref_falling,
|               Vref_rising, Vref_falling, Vmeas_rising, Vmeas_falling rules:
|  
|               Use these subparameters when specifying separate timing test
|               loads and voltages for rising and falling edges.  If one
|               'rising' or 'falling' subparameter is used, then the
|               corresponding 'rising' or 'falling' subparameter must be
|               present.  The values listed in these subparameters override 
|               any corresponding Cref, Vref, Rref or Vmeas values entered
|               elsewhere.
|
|               Rref_diff, Cref_diff rules:
| 
|               The Rref_diff and Creff_diff values under the [Model Spec]
|               keyword override their respective values entered elsewhere.
|               These subparameters are used only when the model is referenced
|               by the [Diff Pin] keyword.  These follow the same rules as
|               the corresponding subparameters documented under the [Model]
|               keyword.  See Section 6b for more discussion on true and
|               single-ended differential operation.
|-----------------------------------------------------------------------------
[Model Spec]
|   Subparameter          typ        min        max
|
| Thresholds
|
Vinh                      3.5        3.15       3.85    | 70% of Vcc
Vinl                      1.5        1.35       1.65    | 30% of Vcc
|
| Vinh                    3.835       3.335     4.335   | Offset from Vcc
| Vinl                    3.525       3.025     4.025   | for PECL
|
| Hysteresis
|
Vinh+                     2.0        NA         NA      | Overrides the
Vinh-                     1.6        NA         NA      | thresholds
Vinl+                     1.1        NA         NA 
Vinl-                     0.6        NA         NA      | All 4 are required
|
| Overshoot
|
S_overshoot_high          5.5        5.0        6.0     | Static overshoot
S_overshoot_low          -0.5        NA         NA
D_overshoot_high          6.0        5.5        6.5     | Dynamic overshoot
D_overshoot_low          -1.0       -1.0       -1.0     | requires
|                                                       | D_overshoot_time 
D_overshoot_time          20n        20n        20n     | & static overshoot
|
|* Overshoot defined by area in V-s (Values from DDR2 specification)
|*
D_overshoot_ampl_h        0.9        NA         NA      | Dynamic overshoot
D_overshoot_ampl_l        0.9        NA         NA      | requires area
D_overshoot_area_h        0.38n      NA         NA      | and amplitude
D_overshoot_area_l        0.38n      NA         NA      | parameters 
|* 
| Pulse Immunity
|
Pulse_high                3V         NA         NA      | Pulse immunity
Pulse_low                 0          NA         NA      | requires
Pulse_time                3n         NA         NA      | Pulse_time
|
| Timing Thresholds
|
Vmeas                     3.68       3.18       4.68    | A 5 volt PECL
|                                                       | example
|
| Timing test load voltage reference example
|
Vref                      1.25       1.15       1.35    | An SSTL-2 example
|
|
| Rising and falling timing test load example (values from PCI-X
| specification)
|
Cref_falling              10p        10p         10p
Cref_rising               10p        10p         10p
Rref_rising               25         500         25  | typ value not specified
Rref_falling              25         500         25  | typ value not specified
Vref_rising               0          1.5         0     
Vref_falling              3.3        1.5         3.6   
Vmeas_rising              0.941      0.885       1.026 | vmeas = 0.285(vcc)
Vmeas_falling             2.0295     1.845       2.214 | vmeas = 0.615(vcc)
|   
| Differential timing test load for true or single-ended differential model
| 
Rref_diff                 100        90         110
Cref_diff                 5pF        NA         NA
|
|*****************************************************************************
|* END NEW TEXT
|*****************************************************************************

******************************************************************************

ANALYSIS PATH/DATA THAT LED TO SPECIFICATION

While creating DDR2 SDRAM IBIS models, it was found that the AC Overshoot/
Undershoot specification could not be checked accurately by simulation tools
given the parameters available for defining overshoot and undershoot under
the [Model Spec] keyword.  The DDR2 specification defines overshoot and
undershoot in terms of a V-ns area.  It was determined that adding two 
parameters to [Model Spec] to describe this area would give EDA software the
necessary information to check for violations of the specification.
  

******************************************************************************

ANY OTHER BACKGROUND INFORMATION:


******************************************************************************